package com.elitedatai.mchtest.manage.service;

import com.elitedatai.mchtest.manage.model.dto.CapacityCameraDTO;
import com.elitedatai.mchtest.manage.model.receiver.CapacityCameraReceiver;

import java.util.List;

/**
 * 相机能力服务接口，定义了相机直播能力相关的业务方法
 */
public interface ICapacityCameraService {

    /**
     * 根据设备序列号查询该设备所有可进行直播的相机数据
     * @param deviceSn 设备序列号
     * @return 相机能力DTO列表
     */
    List<CapacityCameraDTO> getCapacityCameraByDeviceSn(String deviceSn);

    /**
     * 根据设备序列号删除该设备的所有直播能力数据
     * @param deviceSn 设备序列号
     * @return 删除结果
     */
    Boolean deleteCapacityCameraByDeviceSn(String deviceSn);

    /**
     * 保存设备的直播能力数据
     * @param capacityCameraReceivers 相机能力接收器列表
     * @param deviceSn 设备序列号
     */
    void saveCapacityCameraReceiverList(List<CapacityCameraReceiver> capacityCameraReceivers, String deviceSn);

//    /**
//     * 将接收到的相机能力对象转换为相机数据传输对象
//     * @param receiver 相机能力接收器对象
//     * @return 相机能力DTO对象
//     */
//    CapacityCameraDTO receiver2Dto(CapacityCameraReceiver receiver);
}